#ifndef _SEM_HPP_
#define _SEM_HPP_

#include <iostream>
#include <pthread.h>
#include <semaphore.h>

// 封装一下信号量
class Sem
{
public: 
    Sem(int value)
    {
        sem_init(&_sem, 0, value);
    }
    void P()
    {
        sem_wait(&_sem);
    }
    void V()
    {
        sem_post(&_sem);
    }
    ~Sem()
    {
        sem_destroy(&_sem);
    }
private:
    sem_t _sem; 
};

#endif